/**
 * 例题 5.15 一只猴子第一天摘下若干个桃子，当即吃了一半，还不过瘾，又多吃了一个；
 * 第二天早上又将剩下的桃子吃掉一半，又多吃了一个。以后每天早上都吃了前一天剩下的一半加一个。
 * 到第N（N由键盘输入）天早上想再吃时，见只剩下一个桃子了。问：第一天共摘了多少个桃子？
 */

#include <stdio.h>
int main() {
    int n, i, sum = 1;
    printf("please enter a integer number,n=?");
    scanf("%d", &n);
    // 从第n天开始，逆向推算
    for (i = 1; i < n; i++) {
        // 每天吃掉一半加一个，所以前一天剩下的桃子数为(sum+1)*2
        sum = (sum + 1) * 2;
    }
    printf("the first day monkey picked %d peaches.\n", sum);
    return 0;
}